<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="../../CSS/reset.css">
    <style>
        .box1,
        .box2,
        .box3 {
            font-size: 60px;
        }

        .box1 {
            width: 100px;
            height: 100px;
            background-color: rgb(200, 244, 139);
            position: absolute;
            z-index: 1;
            /* z-index: 1;可以用这个属性设置元素的层级
                z-index只适用于已定位的元素：即拥有relative、absolute或者fixed的元素。
                所以z-index是一种 依赖属性 ，依赖position属性。
            */

        }

        .box2 {
            width: 130px;
            height: 130px;
            background-color: rgb(173, 181, 250);
            /* margin-left: 100px;
            margin-top: -100px; */

            /* 相对定位
                层数会提高一层
                相对于自己本身的位置
                还是块元素，没有脱离文档流

                粘滞定位，和相对定位特点基本一致，不同点：粘滞定位可以在元素达到某个位置时将其固定；
            */
            /* position: relative;
            left: 100px;
            top: -100px; */


            /* 开启绝对定位后，如果不设置偏移量元素的位置不会发生变化，元素会从文档流中脱离
            绝对定位相对于最近的包含块元素
             包含块：离它最进的开启定位的祖先元素，
                如果所有元素都没有开启定位元素则根元素就是他的包快。html根元素，初始包含快；

                固定定位也是一种绝对定位，大部分特点都一样，不同点：固定定位的元素永远参照浏览器的视口进行定位；
                */
            /* position: absolute; */
            /* top: 300px;
            left: 200px; */

            z-index: 1;


        }

        .box3 {
            width: 150px;
            height: 150px;
            background-color: rgb(246, 198, 221);
            /* margin-top: 100px; */
            /* 开启绝对定位：多了两个值,加了left,right;7变9
                且垂直也需要满足等式
            */
            /* position: absolute; */
            /* top: 0;
            bottom: 0;
            margin-top: auto;
            margin-bottom: auto;

            left: 0;
            right: 0;
            margin-left: auto;
            margin-right: auto; */
            /* top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            margin: auto; */
            z-index: 3;
        }

        .box4 {
            width: 100px;
            height: 100px;
            background-color: rgb(229, 116, 11);

        }

        .box5 {
            width: 100px;
            height: 100px;
            background-color: rgb(12, 58, 8);
            position: absolute;
            /* top: 100px; */
            left: 100px;
            top: 50px;
        }
    </style>
</head>

<body>
    <div class="box1">1</div>
    <div class="box2">2
        <!-- <div class="box4">4
            <div class="box5">5</div>
        </div> -->
        <!-- <div class="box5">5</div> -->
    </div>
    <div class="box3">3</div>
</body>

</html>